// 方式一  readFileSync(同步 小文件占用内存小）
const process = require('process')
const fs = require('fs');
// 读取文件
let data = fs.readFileSync('./fs-writeFile/img/mds.jpg');
// 写入文件
fs.writeFileSync('./fs-writeFile/文件复制/mds.jpg', data);
// 查看内存占用量
console.log(process.memoryUsage()); //29401088 字节

// 方式二  流式操作（推荐 大文件占用内存小）
// 创建读取流对象
const rs = fs.createReadStream('./fs-writeFile/img/mds.jpg');
// 创建写入流对象
const ws = fs.createWriteStream('./fs-writeFile/文件复制/mds.jpg');
// 绑定data事件
rs.on('data', (arguments) => {
        ws.write(arguments);
    })
    // 绑定data事件 当文件读取结束输出
rs.on('end', (arguments) => {
    // 查看内存占用量
    console.log(process.memoryUsage()); //29741056 字节
})

// 方式三  管道流（很少使用）
rs.pipe(ws)